/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.its.dsw2.zapateriaLes.bl;

import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import mx.its.dsw2.zapateriaLes.Enum.EstadoTerminado;
import mx.its.dsw2.zapateriaLes.dao.UsuariosDaoLocal;
import mx.its.dsw2.zapateriaLes.modelo.Usuarios;

/**
 *
 * @author lesly
 */
@Stateless
public class UsuariosBl implements UsuariosBlLocal {

    @EJB
    private UsuariosDaoLocal usuariosDao;

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")

    @Override
    public EstadoTerminado register(Usuarios user) {
        if(usuariosDao.findDuplicity(user)){
        return EstadoTerminado.INCOMPLETE;
        }else{
        usuariosDao.create(user);
        return EstadoTerminado.COMPLETE;
        }
        
    }

    @Override
    public EstadoTerminado delete(Usuarios user) {
       if(user.getId()==null || usuariosDao.find(user.getId())==null){
       return EstadoTerminado.INCOMPLETE;
       }else{
       usuariosDao.remove(user);
        return EstadoTerminado.COMPLETE;
       }
    }

    @Override
    public EstadoTerminado modify(Usuarios user) {
        if(user.getId()==null || usuariosDao.find(user.getId())==null){
        return EstadoTerminado.INCOMPLETE;
        }else{
            usuariosDao.edit(user);
        return EstadoTerminado.COMPLETE;
        }
    }

    @Override
    public List<Usuarios> getAll() {
        return usuariosDao.findAll();
    }

    @Override
    public List<Usuarios> obtenerUsuarios() {
        return usuariosDao.findAll();
    }

    @Override
    public Usuarios findById(int idUsuario) {
        return usuariosDao.find(idUsuario);
    }
    
}